/*
 * Copyright By ZATI
 * Copyright By 3a3c88295d37870dfd3b25056092d1a9209824b256c341f2cdc296437f671617
 * All rights reserved.
 *
 * If you are not the intended user, you are hereby notified that any use, disclosure, copying, printing, forwarding or
 * dissemination of this property is strictly prohibited. If you have got this file in error, delete it from your system.
 */

package cn.wzc.crystal.security.vo;

import lombok.Builder;
import lombok.Value;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Set;

@Value
@Builder
public class LoginInfo implements Serializable {
	/**
	 * 登录用户ID
	 */
	Long userId;
	/**
	 * 用户登录账号
	 */
	String loginName;
	/**
	 * 用户显示名称
	 */
	String displayName;
	/**
	 * 登录客户端IP
	 */
	String clientIp;
	/**
	 * 最后登录时间
	 */
	LocalDateTime loginTime;
	/**
	 * 所属角色
	 */
	Set<String> roles;
	/**
	 * 可用菜单
	 */
	Set<String> menus;
	/**
	 * 可用按钮
	 */
	Set<String> buttons;
	/**
	 * 可用资源
	 */
	Set<String> resources;
	/**
	 * 可用权限
	 */
	Set<String> authorities;
}
